package com.ruoyi.swla2.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import javax.validation.constraints.NotEmpty;

/**
 * 户表档案对象 dw_terminals_xb
 *
 * @author gdqt
 * @date 2023-06-16
 */
@TableName("dw_terminals_xb")
public class TerminalsXb extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 平台自增主键
     */
    @TableId(value="ID",type = IdType.AUTO)
    private Long ID;

    /**
     * 设备归属水司
     */
//    @Excel(name = "企业租号")
    @TableField("tenant_id")
    private String tenantId;

    /**
     * 层级编号
     */
    @Excel(name = "分区编号")
    @TableField("AreaID")
    private String AreaID;

    /**
     * 用户编号
     */
    @NotEmpty(message = "用户编号不能为空")
    @Excel(name = "用户编号")
    @TableField("TerminalID")
    private String TerminalID;

    /**
     * 用户地址
     */
    @Excel(name = "用户地址")
    @TableField("TerminalAddress")
    private String TerminalAddress;

    /**
     * 用户状态(2-停用1-使用0-在档)
     */
//    @Excel(name = "用户状态(2-停用1-使用0-在档)")
    @TableField("TerminalMark")
    private Long TerminalMark;

    /**
     * 口径
     */
    @Excel(name = "口径")
    @TableField("Caliber")
    private Long Caliber;

    /**
     * 用户名称
     */
    @Excel(name = "用户名称")
    @TableField("UserName")
    private String UserName;

    /**
     * 抄表频次(0-每月抄表,1-单月抄表,2-双月抄表)
     */
//    @Excel(name = "抄表频次(0-每月抄表,1-单月抄表,2-双月抄表)")
    @TableField("Meter_reading")
    private Long meterReading;

    /**
     * 表类型(0-远传表,1-机械表)
     */
    @Excel(name = "表类型(0-远传表,1-机械表)")
    @TableField("EasIon")
    private Long EasIon;

    /**
     * 远传表编号（加归属水司、厂家编号前缀）
     */
    @NotEmpty(message = "表编号不能为空")
    @Excel(name = "表编号")
    @TableField("EasIonID")
    private String EasIonID;

    /**
     * 远传表厂家编号
     */
    @NotEmpty(message = "生产厂家编号不能为空")
    @Excel(name = "生产厂家编号")
    @TableField("SupplierID")
    private String SupplierID;

    @Excel(name = "失败原因",type = Excel.Type.EXPORT)
    @TableField(exist=false)
    private String importContent;

    public void setID(Long ID) {
        this.ID = ID;
    }

    public Long getID() {
        return ID;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    public String getTenantId() {
        return tenantId;
    }

    public void setAreaID(String AreaID) {
        this.AreaID = AreaID;
    }

    public String getAreaID() {
        return AreaID;
    }

    public void setTerminalID(String TerminalID) {
        this.TerminalID = TerminalID;
    }

    public String getTerminalID() {
        return TerminalID;
    }

    public void setTerminalAddress(String TerminalAddress) {
        this.TerminalAddress = TerminalAddress;
    }

    public String getTerminalAddress() {
        return TerminalAddress;
    }

    public void setTerminalMark(Long TerminalMark) {
        this.TerminalMark = TerminalMark;
    }

    public Long getTerminalMark() {
        return TerminalMark;
    }

    public void setCaliber(Long Caliber) {
        this.Caliber = Caliber;
    }

    public Long getCaliber() {
        return Caliber;
    }

    public void setUserName(String UserName) {
        this.UserName = UserName;
    }

    public String getUserName() {
        return UserName;
    }

    public void setMeterReading(Long meterReading) {
        this.meterReading = meterReading;
    }

    public Long getMeterReading() {
        return meterReading;
    }

    public void setEasIon(Long EasIon) {
        this.EasIon = EasIon;
    }

    public Long getEasIon() {
        return EasIon;
    }

    public void setEasIonID(String EasIonID) {
        this.EasIonID = EasIonID;
    }

    public String getEasIonID() {
        return EasIonID;
    }

    public void setSupplierID(String SupplierID) {
        this.SupplierID = SupplierID;
    }

    public String getSupplierID() {
        return SupplierID;
    }

    public String getImportContent() {
        return importContent;
    }

    public void setImportContent(String importContent) {
        this.importContent = importContent;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("ID", getID())
                .append("tenantId", getTenantId())
                .append("AreaID", getAreaID())
                .append("TerminalID", getTerminalID())
                .append("TerminalAddress", getTerminalAddress())
                .append("TerminalMark", getTerminalMark())
                .append("Caliber", getCaliber())
                .append("UserName", getUserName())
                .append("meterReading", getMeterReading())
                .append("EasIon", getEasIon())
                .append("EasIonID", getEasIonID())
                .append("SupplierID", getSupplierID())
                .toString();
    }
}
